
#include<stdio.h>
#include <stdlib.h>
#include<assert.h>
#include<stdbool.h>

typedef int Value;
typedef struct STACK
{
    Value  *a;
    int top;
    int capacity;
}STK;

void StackInit(STK* ps);//初始化

Value StackTop(STK* ps);//取栈顶

void StackPush(STK * ps, Value data);//压栈

void StackDestroy(STK * ps);//销毁

void StackPrint(STK * ps);//出栈

void CheckCapacity(STK * ps);//增容

bool CheckEmpty(STK * ps);
//size
Value StackSize(STK* ps);